package com.yungu.swift.order.model.vo;

import com.yungu.swift.base.model.BaseVo;
import com.yungu.swift.base.model.annotation.Desensitization;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * 跨城拼车订单指派视图对象
 */
@Data
public class JoinOrderAssignVo extends BaseVo {

    @ApiModelProperty(value = "目标UUID（依赖type）")
    private String targetUuid;

    @ApiModelProperty(value = "1 待出发 2 行程中 3 排队中 0 未接单也未排队的司机", example = "0")
    private Integer type;

    @ApiModelProperty(value = "出发时间 / 排队时间")
    private Date deparTime;

    @ApiModelProperty(value = "起点")
    private String originSiteName;

    @ApiModelProperty(value = "终点")
    private String destSiteName;

    @ApiModelProperty(value = "车型名称")
    private String carModelName;

    @ApiModelProperty(value = "车型 uuid")
    private String carModelUuid;

    @ApiModelProperty(value = "车牌号")
    private String plateNum;

    @Desensitization(type = Desensitization.DesensitionType.NAME)
    @ApiModelProperty(value = "司机姓名")
    private String driverName;

    @Desensitization(type = Desensitization.DesensitionType.MOBILE)
    @ApiModelProperty(value = "司机手机号")
    private String driverMobile;

    @ApiModelProperty(value = "剩余座位数", example = "0")
    private Integer resNum;

    @ApiModelProperty(value = "推荐等级&描述")
    private String recommend;

    @ApiModelProperty(value = "线路 uuid")
    private String wayUuid;

    @ApiModelProperty(value = "司机 uuid")
    private String driverUuid;

    @ApiModelProperty(value = "距离")
    private Double distance;

    @ApiModelProperty(value = "权重分")
    private Double weightScore;

    @ApiModelProperty(value = "目前订单ID")
    private String mainOrderUuid;

    @ApiModelProperty(value = "所有乘客订单")
    private List<AllPassengerOrderVo> allPassengerOrderInfoList;
}
